Skip to content

1、fmt - 用于格式化输入输出

示例:打印字符串到控制台。

go
package main
import "fmt"
func main() {
    fmt.Println("Hello, World!")
}

2、strings - 提供字符串操作功能

示例:字符串分割。

go
package main
import (
    "fmt"
    "strings"
)
func main() {
    fmt.Println(strings.Split("a,b,c", ","))
}

3、sort - 用于排序切片和用户定义的数据类型

示例:排序整数切片。

go
package main
import (
    "fmt"
    "sort"
)
func main() {
    slice := []int{3, 1, 4, 1}
    sort.Ints(slice)
    fmt.Println(slice)
}

4、os - 提供操作系统函数,如文件操作

示例:读取环境变量。

go
package main
import (
    "fmt"
    "os"
)
func main() {
    fmt.Println("PATH:", os.Getenv("PATH"))
}

5、io/ioutil - 简化文件读写操作

示例:读取文件内容。

go
package main
import (
    "fmt"
    "io/ioutil"
)
func main() {
    data, err := ioutil.ReadFile("filename.txt")
    if err != nil {
        fmt.Println("File reading error", err)
        return
    }
    fmt.Println("Contents of file:", string(data))
}

6、net/http - 用于 HTTP 客户端和服务器实现

示例:启动一个简单的 HTTP 服务器。

go
package main
import (
    "fmt"
    "net/http"
)
func handler(w http.ResponseWriter, r *http.Request) {
    fmt.Fprintf(w, "Hello, %s!", r.URL.Path[1:])
}
func main() {
    http.HandleFunc("/", handler)
    http.ListenAndServe(":8080", nil)
}

7、encoding/json - 用于 JSON 的编码和解码

示例:解码 JSON 字符串。

go
package main
import (
    "encoding/json"
    "fmt"
)
func main() {
    var data map[string]interface{}
    jsonStr := `{"name": "John", "age": 30}`
    json.Unmarshal([]byte(jsonStr), &data)
    fmt.Println(data)
}

8、database/sql - 用于数据库操作

示例:打开数据库连接(需配合数据库驱动使用)。

go
package main
import (
    "database/sql"
    _ "github.com/go-sql-driver/mysql"
)
func main() {
    db, err := sql.Open("mysql", "user:password@/dbname")
    if err != nil {
        panic(err.Error())
    }
    defer db.Close()
}

9、time - 提供时间操作

示例:获取当前时间并格式化输出。

go
package main
import (
    "fmt"
    "time"
)
func main() {
    fmt.Println("Current time:", time.Now().Format("2006-01-02 15:04:05"))
}

10、sync - 提供同步原语,如锁和条件变量

示例:使用互斥锁。

go
    package main
    import (
        "fmt"
        "sync"
    )
    func main() {
        var mutex sync.Mutex
        mutex.Lock()
        // critical section
        mutex.Unlock()
        fmt.Println("Mutex unlocked")
    }

这些库覆盖了 Go 语言中最常见的一些功能,从基本的字符串和格式化操作到更复杂的网络和并发处理。

木川工作室 (微信:mcmc2024)